package com.hl.order.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 评价管理对象 evaluate
 * 
 * @author ruoyi
 * @date 2025-08-09
 */
public class Evaluate extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 评价ID */
    private Long evaluateId;

    /** 订单ID */
    @Excel(name = "订单ID")
    private Long orderId;

    /** 店铺ID */
    @Excel(name = "店铺ID")
    private Long shopId;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 商品评分（1-5分） */
    @Excel(name = "商品评分", readConverterExp = "1=-5分")
    private String evaluateGoodsScore;

    /** 配送评分（1-5分） */
    @Excel(name = "配送评分", readConverterExp = "1=-5分")
    private String evaluateDeliveryScore;

    /** 评价内容 */
    @Excel(name = "评价内容")
    private String evaluateComment;

    /** 评价时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "评价时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date evaluateTime;

    /** 商家回复内容 */
    @Excel(name = "商家回复内容")
    private String evaluateRelayComment;

    /** 商家回复时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "商家回复时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date evaluateRelayTime;

    public void setEvaluateId(Long evaluateId) 
    {
        this.evaluateId = evaluateId;
    }

    public Long getEvaluateId() 
    {
        return evaluateId;
    }

    public void setOrderId(Long orderId) 
    {
        this.orderId = orderId;
    }

    public Long getOrderId() 
    {
        return orderId;
    }

    public void setShopId(Long shopId) 
    {
        this.shopId = shopId;
    }

    public Long getShopId() 
    {
        return shopId;
    }

    public void setEvaluateGoodsScore(String evaluateGoodsScore) 
    {
        this.evaluateGoodsScore = evaluateGoodsScore;
    }

    public String getEvaluateGoodsScore() 
    {
        return evaluateGoodsScore;
    }

    public void setEvaluateDeliveryScore(String evaluateDeliveryScore) 
    {
        this.evaluateDeliveryScore = evaluateDeliveryScore;
    }

    public String getEvaluateDeliveryScore() 
    {
        return evaluateDeliveryScore;
    }

    public void setEvaluateComment(String evaluateComment) 
    {
        this.evaluateComment = evaluateComment;
    }

    public String getEvaluateComment() 
    {
        return evaluateComment;
    }

    public void setEvaluateTime(Date evaluateTime) 
    {
        this.evaluateTime = evaluateTime;
    }

    public Date getEvaluateTime() 
    {
        return evaluateTime;
    }

    public void setEvaluateRelayComment(String evaluateRelayComment) 
    {
        this.evaluateRelayComment = evaluateRelayComment;
    }

    public String getEvaluateRelayComment() 
    {
        return evaluateRelayComment;
    }

    public void setEvaluateRelayTime(Date evaluateRelayTime) 
    {
        this.evaluateRelayTime = evaluateRelayTime;
    }

    public Date getEvaluateRelayTime() 
    {
        return evaluateRelayTime;
    }

    public Long getUserId() {
		return userId;
	}

    public void setUserId(Long userId) {
		this.userId = userId;
	}

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("evaluateId", getEvaluateId())
            .append("orderId", getOrderId())
            .append("shopId", getShopId())
                .append("userId", getUserId())
            .append("evaluateGoodsScore", getEvaluateGoodsScore())
            .append("evaluateDeliveryScore", getEvaluateDeliveryScore())
            .append("evaluateComment", getEvaluateComment())
            .append("evaluateTime", getEvaluateTime())
            .append("evaluateRelayComment", getEvaluateRelayComment())
            .append("evaluateRelayTime", getEvaluateRelayTime())
            .toString();
    }
}
